package com.project.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.project.dto.AnnouncementDto;
import com.project.dtoplus.AnnouncementDtoPlus;
import com.project.entity.Annex;
import com.project.entity.Announcement;
import org.springframework.web.multipart.MultipartFile;


import java.io.IOException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;


public interface AnnouncementService extends IService<Announcement> {
    public void saveWithAnnex(AnnouncementDto announcementDto) ;

    public List<Annex> addAnnex(MultipartFile[] files) throws IOException;

    public AnnouncementDtoPlus getByIdWithAnnex(Long id);

    public void updateWithAnnex(AnnouncementDto announcementDto) throws IOException;

    public void deleteAnnex(String[] ids);

    public Page pageSearch(int page, int pageSize, String title, String department , LocalDate modifiedTime);

    public Page searchLastFour(int page,int pageSize);

    public AnnouncementDtoPlus getDetail(Long id);

    public AnnouncementDtoPlus getConcise(AnnouncementDto announcementDto);
}
